home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 10
/
FM Towns Free Software Collection 10.iso
/
ms_dos
/
tool
/
athena
/
athena.doc
< prev
next >
Wrap
Text File
|
1995-02-17
|
21KB
|
572 lines
==============================================================================
テキスト整形・印刷ツール
8086|Printman/TEXT 'Athena' Version 1.00a
for PC-9800,FMR/TOWNS,DOS/V,J-3100,AX
Copyright (c) 1995 Delmonta
==============================================================================
第1章 はじめに
1.1 Athenaとは
プログラマにとっては、プログラムリストを印刷して全体を見渡し、バグを探したり
するということは、よくあることです。そのとき、印刷する必要があるようなリストな
らば、一般に数百行以上にのぼることもしばしばあります。つまり、用紙を節約するた
めに、用紙にできるだけ小さな字で詰め込んで印刷する必要があるといえます。
私の場合には、B5あるいはA4の紙を縦に2つに割り、 プリンタの縮小印刷機能を使っ
て通常の50%の大きさの字で印刷していますが、 用紙を切ってからプリンタにセットす
る手間などもあり、最初からB5/A4の紙に2段組で印刷できないかと考えていました。
さて、プリンタの縮小機能を利用して50%の大きさの字でB5/A4に印刷するためには、
印刷するソフトの側では用紙サイズをB3あるいはA2 [*1]に設定する必要があります。
しかし、 多くのワープロソフトなどでは、 A3までには対応していてもそれ以上のサイ
ズ、つまりB3やA2はサポートしていないのが普通です。また、ワープロソフト側の縮小
印刷機能を使う場合は、印刷速度や解像度[*2]の点で不利です。
そこで、昨年発表した8086|Printman Libraryの宣伝もかねて、 プログラマ向けのテ
キスト印刷ソフトを開発することにしました。 それが、 この「8086|Printman/TEXT
'Athena'」(以下Athena)です。
1.2 Athenaの特長
o プリンタが許す限りのいくらでも大きな紙に印刷できます。
o 段組の段数には特に制限はありません(ただし、 4~6段くらいが限界でしょ
う)。
o ひとつの実行ファイルで複数機種に対応しています。
o 画面表示などは簡素化してあり(実際は作者の手抜き)、 ファイルサイズは30KB
以下と、機能の割にコンパクトです。
o テキストファイルをプリンタに出力せずに、 テキスト整形フィルタとして使用
することができます(これはプレビュワーの役割もかねています)。
このように、AthenaはMS-DOSのコマンドモードでプログラミングをするユーザーにと
って非常に使いやすいものになっています。
逆に、次のような方には、素直にワープロソフトを使用することをお勧めします。
o パソコン初心者の方
o そんなに多くの文章を印刷しない方
o Windowsとレーザープリンタを常時使用している方
1.3 対応機種
Athenaは、次の各機種で動作します。
o NEC PC-9800シリーズ
o 富士通 FMR/TOWNSシリーズ
o DOS/V規格機
o 東芝J-3100シリーズ/AX規格機
なお、フィルタとして使用する場合は、DOS汎用です。
また、対応しているプリンタは次の通りです。
o ESC/P84-J24規格機
o MSX漢字プリンタ
o NEC PC-PR201H互換機
o 富士通FMPRシリーズ
1.4 表記について
本マニュアルでは、オプションの書き方について、次のような表記を使用します。
1. {A|B|C}は、A、B、Cのうちから1つ選択することを示します。
2. [parm]は、parmが省略可能であることを示します。
note:
[*1] 実際は、私のプリンタはB3までしか対応していません(;_;)。
[*2] 筆者のプリンタは360dpiですが、 手元のソフトはビットマップ印刷の場合は
180dpiで印刷します。
第2章 使用法
2.1 はじめに
用紙は、 原則としてプリンタの左端にあわせてセットします。PC-PRでは、多くのソ
フトでは中央にあわせてセットするようになっていますので、注意してください。
2.2 全体の流れ
まず、ここではAthenaを使用する際の「全体の流れ」を説明します。
Athenaを起動するには、まず、MS-DOSのコマンドラインから次のように入力します。
ATHENA [オプション] ファイル名
オプションについては、次節以降で説明します。Athenaが起動すると、次のように表
示されます。
テキスト印刷 8086|Printman/TEXT 'Athena' Version 1.00a
機種設定 : FMR/TOWNS + ESC/P-J84
印刷するファイル : filename.ext
物理マージン : 上9mm 左3mm
用紙サイズ : 横182mm×縦257mm
論理マージン : 上20mm 左10mm 右10mm 下20mm
印字方向 : 横書き
出力する範囲 : 1~9999ページ(ページ番号 +0)
1字の幅 : 全角あたり 横28×縦38ドット
字詰め : 80字×40行
段組 : 1段(段幅161mm)
ヘッダ : (なし)
フッタ : (なし)
これでよろしいですか(y/n)
このうち、「1字の幅」と、段組みの「段幅」以外の項目は、 すべてオプションで設
定した値です。
「1字の幅」とは、全角文字1文字に使用される幅を、ドット単位で示したものです。
次のような判断基準で見てください。
1. 横、縦ともに、24未満になると隣の字と字の一部が重なります。
2. 横幅が27より小さくなった場合、PC-PR201HやMSX漢字プリンタでは印刷が極端
に遅くなります。
3. 横幅が縦幅より大きくなると、読みづらくなります。 縦幅は横幅より約1割以
上多くなるようにするのがベターです。
ここでもう一度オプションを確認し、 これでよければYを押してください。 後は、
「xxページを印刷します 用紙をセットしてください」と表示されますので、用紙をセ
ットし、何かキーを押すと印刷が始まります。
オプションを訂正したい場合、特に「機種設定」の部分が間違っている場合は、 Nを
押してください。終了します。
また、 途中で終了したいときは、「xxページを印刷します・・・」が表示されていると
きに、Ctrl+Cを押してください。
なお、相反するオプションが指定されたときは、右側にあるものが有効になります。
2.3 環境変数とレスポンスファイル
毎回設定する決まりきったオプション、特に次節で説明する-C、-P、-Lなどのオプシ
ョンは、環境変数Athenaに設定しておくと、そのオプションを起動時に毎回指定する手
間が省けます。
また、Athenaにはたくさんのオプションがありますので、場合によってはMS-DOSのコ
マンドラインの長さの制限である127バイトを超えてしまうことがあります。 この場
合、 Athenaに渡すべきオプションを記述したファイルを用意し、 コマンドラインに
「@athena.i」のように、「@」に続けてファイル名を書くと、コマンドラインのその位
置にそのファイルの内容が挿入されます。このファイルのことを、レスポンスファイル
といいます。
なお、レスポンスファイルや環境変数の中で例えば「@athena2.i」としても、それは
athena2.iの内容をそこに挿入する意味ではなく、 「@athena2.i」という名前のファイ
ルを印刷する意味になります。
また、環境変数やレスポンスファイルの中でファイル名にワイルドカードを使用する
ことはできません。
なお、レスポンスファイルの1行は改行を除いて254バイト以内にしてください。
[注意]
「@a:athena.i」は「a:athena.i」をレスポンスファイルとする指定であり、
「a:@athena.i」はAドライブの「@athena.i」の内容を印刷する意味です。
2.4 絶対に必要なオプション
ここでは、Athenaを使用する際に絶対指定しなければならないオプションについて説
明します。これらのオプションは、基本的に環境変数に設定しておくべきでしょう。
2.4.1 コンピュータの機種
-Cオプションは、使用するコンピュータの機種を指定します。
書式 : -C{NEC|FM|IBM|J31|AX} (デフォルトは-CFM)
+-----------------------------------------------------------------+
| NEC |NEC PC-9800シリーズ、EPSON PC-x86シリーズ |
|----------+------------------------------------------------------|
| FM |富士通 FMR/FM TOWNSシリーズ、松下 PanacomMシリーズ |
|----------+------------------------------------------------------|
| IBM |PC/AT互換機(DOS/V) |
|----------+------------------------------------------------------|
| J31,-CAX |東芝 J-3100シリーズ、各社 AX規格機 |
+-----------------------------------------------------------------+
なお、実際は-Cの後の1文字しか見ていませんから、-CN、 -CFのように略記すること
が可能です。
2.4.2 プリンタの機種
-Pオプションは、使用するプリンタの機種を指定します。
書式 : -P{ESCP|MSX|PCPR|FMPR} (デフォルトは-PESCP)
+-------------------------+
|ESCP|ESC/P84-J24規格機 |
|----+--------------------|
|MSX |MSX規格漢字プリンタ |
|----+--------------------|
|PCPR|PC-PR201H互換機 |
|----+--------------------|
|FMPR|FMPRシリーズ |
+-------------------------+
なお、 実際は-Pの後の1文字しか見ていませんから、-PE、-PMのように略記が可能で
す。
2.4.3 物理マージン
プリンタには、用紙の四隅に印刷できない領域が存在します。 これを、 Athenaでは
「物理マージン」と呼びます。
物理左マージン
| |
+------------+--
| | 物理上マージン
| ******** |--
| *印刷可* |
| *能領域* |
| ******** |
| |
+------------+
-Lオプションでは、 4つの物理マージンのうち物理上マージンと物理左マージンを指
定します。
書式 : -L物理上マージン,物理左マージン (デフォルトは-L9,3)
物理マージンは、 通常はプリンタの説明書に書いてあるはずです。 分からない場合
は、 まず上と左の物理・論理マージンをともに0にし、ヘッダになにも指定せずになに
か印刷してみてください。[*3]そして、上の図の物理マージンの値を測ってください。
なお、印刷された文章が用紙の左端からはみ出してしまった場合は、下の図のように
して調べてください。
↓ここの長さにマイナスをつけた数値が物理左マージン
| +------------+
| | |
************ |
**印刷され** |
***た文章*** |
************ |
| |
+------------+
この章の冒頭に、原則として用紙はプリンタの左端にセットしてくださいと書きまし
たが、この機能を使えば中央にセットして使用することもできます。しかし、用紙のサ
イズによって物理マージンが違うことになるので、いつも同じサイズの用紙しか使用し
ないという場合以外はお勧めしません。
なお、物理右マージンと物理下マージンはこのオプションでは指定しませんが、後述
の-Mコマンドで指定する論理右/下マージンがこれを下回らないように注意してくださ
い。
2.5 もっとも基本的なオプション
ここでは、 書式設定のオプションのうち、 もっとも基本的なものについて説明しま
す。
2.5.1 用紙サイズの指定
-Sオプションは、用紙のサイズを指定します。次の2通りの指定方法があります。
書式 : -S横幅,縦幅 または -S{A|B}{3|4|5|6}[L] (デフォルトは-SB5)
前者は、用紙のサイズを直接指定する方法、後者はA4、B5などの型番で指定する方法
です。 なお、型番の後に'L'をつけると用紙を横長に使う指定、つけなければ縦長に使
う指定になります。
2.5.2 論理マージンの指定
-Mオプションは、用紙の四隅に開ける余白(論理マージン)の大きさを指定します。
書式 : -M上余白,左余白,右余白,下余白 (デフォルトは-M20,10,10,20)
なお、物理マージンとは、プリンタの仕様上印刷「できない」部分であり、論理マー
ジンとは、それとは別にユーザーが印刷「しない」部分を指定するものです。
[注意]
論理マージンには、物理マージンより小さい値を指定することができません。特に、
物理右マージン・物理下マージンは-Lオプションで明示的に指定しないので、特に注意
してください。
2.5.3 字詰め
-Nオプションは、1行の字数、1ページに印刷する行数を指定します。
書式 : -N横の字数,縦の字数 (デフォルトは-N80,40)
なお、横の字数は半角を1文字、すなわち全角文字は1字で2字分と数えます。
2.6 段組の設定
Athenaでは、テキストファイルに段組を施して印刷することができます。
書式 : -K段数,段間スペース (デフォルトは-K1,10)
なお、段組を設定した場合、 -Nオプションでは1段あたりの字数を指定することに注
意してください。
2.7 ヘッダ・フッタ
Athenaでは、用紙の上部や下部にページ番号などを印刷することができます。上部に
印刷するものをヘッダ、下部に印刷するものをフッタといいます。
ヘッダは-Hオプションで、フッタは-Fオプションで指定します。
書式 : -H"ヘッダ文字列" -F"フッタ文字列" (デフォルトはヘッダ・フッタなし)
「ヘッダ文字列」の書き方と、「フッタ文字列」の書き方は全く同一ですから、ここ
ではヘッダの方を例に取って説明することにします。
まず、ヘッダ文字列は全体を「"」で括ります。「"」自身をヘッダ文字列の一部とし
て使用したい場合は、 「^"」としてください。また、「^」を使用したい場合も、同様
に「^^」としてください。
ヘッダ文字列の中には、次にあげる特殊コードを書くことができます。
+---------------------------------+
|%n|ページ番号 |
|--+------------------------------|
|%p|パス名を含んだファイル名[*4] |
|--+------------------------------|
|%f|パス名を含まないファイル名 |
|--+------------------------------|
|%%|%それ自身(「^%」ではない) |
+---------------------------------+
フッタ文字列も同様に指定可能です。
2.8 その他のオプション
2.8.1 標準出力への出力
Athenaでは、第1章で述べたように、 ファイルの内容をプリンタではなく標準出力へ
出力します。
書式 : -P! (デフォルトは-P!なし)
これは、 ファイルを印刷する前に用紙が何枚必要になるのか、この字詰めで1枚の用
紙に収まるのかなどを調べるために使用できます。 また、 この機能をメインにして、
Athenaを印刷ツールではなくテキスト整形フィルタとして使用することもできます。
-P!を指定した場合、 ページ間には空白行が置かれますが、その行数は-Mオプション
の「論理下マージン」で指定します。
なお、-P!と-Mを同時に指定する場合は、必ず-P!を先に指定してください。 -P!を指
定し、コマンドラインのそれ以降の部分で-Mを指定しなかった場合は、論理下マージン
は1とみなされ、ページ間には1行の空行が置かれます。
2.8.2 印刷する範囲の指定
-Aオプションは、テキストのうちどこからどこまでを印刷するのかを指定します。
書式 : -A開始ページ,終了ページ,ページ番号増分 (デフォルトは-A1,9999,0)
-Aオプションが指定されると、 Athenaは、 「開始ページ」で指定されたページから
「終了ページ」で指定されたページまでのみを印刷します。
また、ヘッダ・フッタにページ番号を埋め込むとき、実際のページ番号の代わりに、
ページ番号に「ページ番号増分」を加えたものを埋め込みます。
例えば、テキストのうち3ページから5ページまでを印刷するとして、印刷されるもの
の中での1枚目(実際には第3ページ)にページ番号「1」を振りたいというような場合
に、-A3,5,-2とします。
2.8.3 タブサイズの変更
-Tオプションは、タブのサイズを指定します。2の累乗でない数も指定できます。
書式 : -Tタブサイズ (デフォルトは-T8)
2.8.4 縦書き
-Wオプションは、文章を縦書きで印刷します。-W0は、文章を横書きで印刷します。
書式 : -W[0] (デフォルトは-W0)
なお、プリンタの機種によっては、一部の回転してはいけない字も物理的に回転させ
てしまいます。
2.9 補足説明
2.9.1 全オプションのリスト
Athenaの全オプションのリストを、以下に示します。
-C{NEC|FM|IBM|J31|AX}
-P{ESCP|MSX|PCPR|FMPR}
-L物理上マージン,物理左マージン
-S横幅,縦幅 または -S{A|B}{3|4|5|6}[L]
-M上余白,左余白,右余白,下余白
-N横の字数,縦の字数
-K段数,段間スペース
-H"ヘッダ文字列" -F"フッタ文字列"
-P!
-A開始ページ,終了ページ,ページ番号増分
-Tタブサイズ
-W[0]
2.9.2 デフォルト値のリスト
Athenaの全オプションのデフォルトを、以下に示します。
-CFM
-PESCP
-L9,3
-SB5
-M20,10,10,20
-N80,40
-K1,10
ヘッダ・フッタなし
-P!なし
-A1,9999,0
-T8
-W0
2.9.3 複数の数値を指定するオプションについて
コンマで区切って複数の数値を指定するタイプのオプションでは、先頭の何個かだけ
を指定し、残りを省略することができます。例えば、-Aのデフォルトは-A1,9999,0です
から、-A3,5,0の代わりに-A3,5と書くことができます。
2.9.4 エラーチェックについて
オプションのパラメータが不正な値をとっていないかのチェックは、一応最小限は行
っていますが、非常に大ざっぱです。極端な値を設定した場合はゴミに近い内容が印刷
されることがありますので、注意してください。
note:
[*3] 先頭に空行のあるファイルや、すべての行に字下げがしてあるファイルでは正確
な値は測れません。ご注意ください。
[*4] これは、フルパスで出力す
るわけではなく、コマンド
ラインに指定されたものを
そのまま出力します。
第3章 トラブルシューティング
この章では、導入時に陥りやすい主なトラブルと、その解決法を説明します。
[トラブル]
起動するとすぐハングアップし、「Int trap halt.」「不正な割り込み92Hが発生し
ました」などのように表示される。
[解決法]
-Cオプションを正しく設定してください。デフォルトでは-CFMが設定されています。
また、同じ富士通でもFMVシリーズでは-CIBMを指定してください。
[トラブル]
正しい内容が印刷されず、ゴミが印刷される。
[解決法]
まず、プリンタが正しく設定されているか確認してください。次に、-Pオプションを
正しく設定してください。また、-CIBMオプションと-CJ31(-CAX)オプションとでは、動
作が異なります。正しく設定するようにしてください。
[トラブル]
印刷すると、内容が用紙の左右にはみ出してしまう。あるいは、用紙の四隅の余白の
幅が、-Mオプションで設定した値と違う。
[解決法]
用紙サイズと物理マージンを正しく設定してください。
[トラブル]
印刷すると、次のように文章が折り返されてしまう。
+---------------------------------------------+
| 印刷したい内容 | 実際に印刷される内容 |
|----------------------+----------------------|
|プログラマにとっては、|プログラマにとって |
|プログラムリストを印刷|は、 |
|して全体を見渡し、バグ|プログラムリストを |
|を探したりするというこ|印刷 |
|とは、よくあることです|して全体を見渡し、 |
| (後略) | (後略) |
+---------------------------------------------+
[解決法]
これには2つの原因が考えられます。
1) テキストファイルの1行ごとに改行コードが入っている。
この場合は、1行の字数を多くして、改行コードまでが1行に入るようにして
ください。
2) 論理右マージンが物理右マージンより多くなっている
これは特に、プリンタの縮小印刷機能を使用し、Athena側でB4横やB3のよう
な横幅の大きなサイズの用紙を使用したときに起こります。論理右マージンを
多くとるようにしてください。
ちなみに、私の環境では、B4横やB3の場合、論理右マージンを20mm以上にす
る必要がありました。
[トラブル]
1ページ分のはずの内容が1ページに収まらない。あるいは、排紙された後に次の用紙
をセットしても、また排出されてしまう。
[解決法]
まず、用紙サイズと物理マージンが正しいかどうか確認してください。それが正しけ
れば、論理下マージンが物理下マージンより小さくなっています。論理下マージンを増
やしてください。
縮小印刷するときは、物理マージンは実際よりも多く設定するということに注意して
ください。 例えば、物理下マージンが10mmの機種で50%に縮小印刷する場合は、論理下
マージンは20mm以上に設定しなければなりません。
[トラブル]
縦書きにすると、 本来なら回転してはいけないはずの文字まで物理的に90度回転す
る。
[解決法]
これは作者の手抜きですが、そもそも縦書きはおまけでつけたものなので、仕様だと
思ってあきらめてください。 m(_ _)m
追記 A 著作権・免責
A.1 オリジナルパッケージの内容
Athenaのオリジナルパッケージには、次のファイルが含まれています。
+-------------------------------------------+
|ATHENA .EXE|実行可能プログラム |
|------------+------------------------------|
|ATHENA .DOC|ドキュメント(このファイル) |
|------------+------------------------------|
|ATHENA .C |ソースプログラム |
+-------------------------------------------+
A.2 著作権
本ソフトウェアは、著作権を放棄していない、いわゆるフリーソフトウェアです。本
ソフトウェアに関する一切の権利は、作者(Delmontaこと飯嶋浩光)が保有します。
A.3 使用条件
本ソフトウェアは、誰でも自由に使用することができます。企業の業務等への使用も
いっさい制限しません。また、個人的な使用の場合は、いかなる改変をしてもかまいま
せん。
作者は、本ソフトウェアの動作保証をしません。本ソフトに欠陥があった場合でも、
作者に本ソフトウェアの修正を行う義務はないものとします。
また、本ソフトウェアの使用によりいかなる損害が発生したとしても、作者はそれを
補償する義務を負わないものとします。
A.4 再配布
本ソフトウェアを再配布する場合は、オリジナルパッケージに含まれる全てのファイ
ルを単一のパッケージとして配布してください。アーカイブの形式などは問いません。
この時、郵送料、メディア代金等の実費を超える金品の授受を禁じます。
雑誌の付録、パソコン通信への登録など不特定多数への配布となる場合は事後で結構
ですから作者まで連絡をください。ただし、日本国外の不特定多数への配布の際、およ
び他のソフトウェアに添付しての配布の際には、書面による作者の事前の許可が必要で
す。
改変したファイルを含むパッケージの不特定多数への再配布には、有償、無償を問わ
ず書面による作者の許可が必要です。
追記 B 最後に
B.1 開発環境
Athenaは、エル・エス・アイ・ジャパン株式会社の「LSI C-86 Ver3.30c試食版」を
使用して開発し、そのライブラリをリンクしています。
Athenaには、自作「8086|Printman Library Version 1.20a」を使用しています。
B.2 連絡先
Athenaに関するご意見・ご感想等は、つぎの宛先までお願いします。
314 茨城県鹿島郡鹿島町鉢形台3-9-13
飯嶋 浩光
B.3 参考資料
Athenaの制作にあたって、次の資料を参考にしました。
o Lotus Development Corporation「Lotus 1-2-3 R2.4J」
o 豊嶋久道「PRT++ Ver5.46」添付マニュアル
o 株式会社ジャストシステム「一太郎 Ver4.3」